package com.yqg.manage.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.List;

import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;

/**
 * laws_and_regulations 实体类
 *
 * @author zxf
 * @since 2025-07-26
 */
@Data
@TableName("laws_and_regulations")
@ApiModel(value = "LawsAndRegulations对象", description = "")
public class LawsAndRegulations implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty("违法行为")
    private String illegalAct;

    @ApiModelProperty("违反条款")
    @TableField(typeHandler = JacksonTypeHandler.class)
    private List<Integer> illegalTerms;

    @ApiModelProperty("处罚依据")
    @TableField(typeHandler = JacksonTypeHandler.class)
    private List<Integer> illegalBasis;

    @ApiModelProperty("轻微违法情节和后果")
    private String slightPlotConsequences;

    @ApiModelProperty("轻微处罚标准")
    private String slightPunishmentStandards;

    @ApiModelProperty("一般违法情节和后果")
    private String generalPlotConsequences;

    @ApiModelProperty("一般处罚标准")
    private String generalPunishmentStandards;

    @ApiModelProperty("严重违法情节和后果")
    private String seriousPlotConsequences;

    @ApiModelProperty("严重处罚标准")
    private String seriousPunishmentStandards;

    @ApiModelProperty("(0可用，1删除)")
    private String isDelete;


    /**
     * 违反条款对象
     */
    @TableField(exist = false)
    private List<Term> illegalTermsObject;

    /**
     * 处罚依据对象
     */
    @TableField(exist = false)
    private List<Term> illegalBasisObject;

    @TableField(exist = false)
    private String illegalTermsString;
    
    @TableField(exist = false)
    private String illegalBasisString;
}
